$(function () {

    // 全局变量 文章id
    let id;
  
  
    // 1 文件上传框 绑定 change事件
    $("#inputCover").change(function () {
      const file = this.files[0];
      $("#coverimg").prop("src", URL.createObjectURL(file));
    })
    // 2 发送请求 获取 文章列表数据
    function getCategoryList() {
      $.get("/admin/category/list", function (res) {
        let html = "";
        res.data.forEach(value => {
          html += `<option value="${value.id}" >${value.name}</option>`;
        });
        $("#category").html(html);
      })
    }
  
    // 3 初始化 日期选择器
    function renderDate() {
      //执行一个laydate实例
      layui.laydate.render({
        elem: '#articleDate' //指定元素
      });
    }
  
    // 4 初始化富文本编辑器
    function renderEditor() {
      tinymce.init({
        selector: '#articleContent',
        language: 'zh_CN',//注意大小写
      });
    }

      //5.发送请求
    //   function getArticleDetail() {
    //     const usp = new URLSearchParams(this.location.search);
    //     id = usp.get("id");
    
    //     $.get("/admin/article/search", { id }, function (res) {
    
    //         const { title, cover, categoryId, date, content } = res.data;
    //       // 5.1 填充 标题
    //       $("[name='title']").val(title);
    //       $("#coverimg").prop("src", cover);
    //       $("[name='categoryId']").val(categoryId);
    //       $("[name='date']").val(date);
    //       // 文章内容  1  直接给文本域赋值  2 如果失败了 查阅 tinymce文档 查看如何赋值 
    //       $("#articleContent").val(content);
    
    //     })
    
    //   }

    function getArticleDetail() {
        const usp = new URLSearchParams(this.location.search);
        id = usp.get("id");
    
        $.get("/admin/article/search", { id }, function (res) {
    
          const { title, cover, categoryId, date, content } = res.data;
          // 5.1 填充 标题
          $("[name='title']").val(title);
          $("#coverimg").prop("src", cover);
          $("[name='categoryId']").val(categoryId);
          $("[name='date']").val(date);
          // 文章内容  1  直接给文本域赋值  2 如果失败了 查阅 tinymce文档 查看如何赋值 
          $("#articleContent").val(content);
    
        })
    
      }

     
      
      getCategoryList();
      renderDate();
      renderEditor();
      getArticleDetail();

  $(".btn-edit").click(function () {
    postArticle("已发布");
  })
  // 5 给 “草稿” 绑定点击事件
  $(".btn-draft").click(function () {
    postArticle("");
  })
  function postArticle(state) {

    // 5.1 创建了一个formdata对象
    const fd = new FormData($("#form")[0]);
    // 5.2.5 获取富文本的内容
    const content = tinyMCE.editors["articleContent"].getContent();
    fd.append("content", content);
    fd.append("state", state );
    fd.append("id",id);
    // 5.2.3    因为我们之前有学习过 只不过 忘记了遗忘了！！ 
    $.ajax({
      url:"/admin/article/edit",
      type:"post",
      data:fd,
      contentType:false,
      processData:false,
      success(res){
        if(res.code===200){
          // 5.3 返回文章列表页面
          location.href="article_list.html";
        }
      }
    })
}

})